
//document.write("<script language='javascript' src=ezca-XTXApp.js></script>");


/**
 * EZCA 登录初始化ukey
 */
function esp_ezca_onload() {
	
//	$.ajaxSetup({cache:false}) // 这行代码也是专门留给IE这个垃圾的

	GetUserList("LoginForm.UserList");
		
}

/**
 * 响应拔下登录ukey的动作。 插入新ukey不理睬，拔下非登录ukey也不理睬
 */
function esp_ezca_onpull() {
	$.get('/c/espreg/container-name', function(data) {
		var containerName = $.trim(data)
		var strUserList = SOF_GetUserList();
		var index = strUserList.indexOf(containerName) 
// alert('strUserList='+strUserList+';\ncontainer-name='+containerName+';index='+index)
		if (data!="" && (-1 == index)) { // 所有正插入的证书中没有已登录证书
			alert('提示：您已经拔出登录认证U盘，当前用户将注销！')
			app_exit('/esp')			
		}
	})
}

/**
 * ezca身份登录
 * UserCert 和 ContainerName
 * 
 * @returns
 */
function esp_ezca_onsubmit_local() {
		
	var objForm = LoginForm;
	var strCertID = LoginForm.UserList.value // ContainerName
	var strPin = LoginForm.UserPwd.value
	if (objForm == null) {
		alert("表单错误");
		return false;
	}
	if (strCertID == null || strCertID == "") {
		alert("获取用户信息失败");
		return false;
	}
	if (strPin == null || strPin == "") {
		alert("请输入证书密码");
		return false;
	}
	if (strPin.length < 6 || strPin.length > 16) {
		alert("密码长度应该在4-16位之间");
		return false;
	}
	var ret = SOF_Login(strCertID, strPin);
	if (!ret) {
		var retryCount = SOF_GetPinRetryCount(strCertID);
		if (retryCount > 0) {
			alert("校验证书密码失败!您还有" + retryCount + "次机会重试!");
			return false;
		} else if (retryCount == 0) {
			alert("您的证书密码已被锁死,请联系\n数字证书办理机构进行解锁!");
			return false;
		} else {
			alert("登录失败!");
			return false;
		}
	}
	var userCert = SOF_ExportUserCert(strCertID, KEY_SIGNOREXCHANGE);
	if (userCert == null || userCert == "") {
		alert("导出用户证书失败!");
		return false;
	}
	if (!CheckValid(userCert)) {
		return false;
	}	

	var strSignItem = "<input type=\"hidden\" name=\"UserSignedData\" value=\"\">";
	if (objForm.UserSignedData == null) {
		objForm.insertAdjacentHTML("BeforeEnd", strSignItem);
	}
	var strCertItem = "<input type=\"hidden\" name=\"UserCert\" value=\"\">";
	if (objForm.UserCert == null) {
		objForm.insertAdjacentHTML("BeforeEnd", strCertItem);
	}
	var strContainerItem = "<input type=\"hidden\" name=\"ContainerName\" value=\"\">";
	if (objForm.ContainerName == null) {
		objForm.insertAdjacentHTML("BeforeEnd", strContainerItem);
	}
	objForm.UserCert.value = userCert;
	objForm.ContainerName.value = strCertID;
	
	return true;
}

/**
 * EZCA 提交前验证（登录）
 * 
 * @returns {Boolean}
 */
function esp_ezca_onsubmit_server() {
	GetUserListWindow("ss");
	var strContainerName = LoginForm.UserList.value;
	//var strPin = LoginForm.UserPwd.value;
	LoginForm.strRandom.value = strServerRan // 'NDYxNjY1NTEwNzc0NTk1NTM4NTcxOTY0'
	
  var ret = Login("LoginForm", strContainerName);
   
	if(ret) {
		
	} else {
		return false;
	}
}

/**
 * EZCA 提交前验证（文件签名）
 * 
 * @returns {Boolean}
 */
function string_ezca_onsubmit_server(data) {
	
	GetUserListWindow("ss");

	var certid = document.getElementById("UserList").value;
    var filepath=data;
//	alert(filepath);
//    if(filepath==""){
//		alert("请选择文件路径");
//		return false;
//	}

     SignFile(certid, filepath);

}

//根据不同浏览器获取路径
 function getvl(obj){
 //判断浏览器
	
   if (obj)
   { 
	   if (window.navigator.userAgent.indexOf("MSIE") >= 1) 
   { 
		   　obj.select();
	 return document.selection.createRange().text;	
   }	 
   else if (window.navigator.userAgent.indexOf("Firefox") >= 1) 
   {	 if (obj.files)
   {		 
	   return obj.files.item(0).getAsDataURL();	
	   }		
   return obj.value;		 
   }		 
   return obj.value;		  }
 }
